<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    
</body>
<script>

/* function downloadData(filename, data) {
    // 创建一个 Blob 对象，表示不可变的、原始数据的类文件对象。
    const blob = new Blob([data], { type: 'text/csv;charset=utf-8;' });

    // 创建一个临时的 URL 来指向这个 Blob 对象。
    const url = URL.createObjectURL(blob);

    // 创建一个隐藏的 <a> HTML 锚点元素。
    const anchor = document.createElement('a');
    anchor.style.display = 'none';
    anchor.href = url;
    anchor.download = filename;

    // 将锚点添加到 DOM 中，点击它以触发下载，然后移除。
    document.body.appendChild(anchor);
    anchor.click();
    document.body.removeChild(anchor);

    // 释放对象 URL
    URL.revokeObjectURL(url);
}

// 示例调用函数
downloadData('my-data.csv', 'Name,Age\nJohn Doe,30\nJane Doe,25'); */

/* function downloadTextFile(filename, text) {
    // 创建一个 Blob 对象，表示不可变的、原始数据的类文件对象。
    // 改变 MIME 类型为 'text/plain' 以匹配文本文件。
    const blob = new Blob([text], { type: 'text/plain;charset=utf-8' });

    // 创建一个临时的 URL 来指向这个 Blob 对象。
    const url = URL.createObjectURL(blob);

    // 创建一个隐藏的 <a> HTML 锚点元素，并设置其属性。
    const anchor = document.createElement('a');
    anchor.style.display = 'none';
    anchor.href = url;
    
    // 确保文件名有 .txt 扩展名。
    anchor.download = filename.endsWith('.txt') ? filename : `${filename}.txt`;

    // 将锚点添加到 DOM 中，点击它以触发下载，然后移除。
    document.body.appendChild(anchor);
    anchor.click();
    document.body.removeChild(anchor);

    // 释放对象 URL。
    URL.revokeObjectURL(url);
}

// 示例调用函数，导出为 txt 文件。
downloadTextFile('my-data', '这是一个简单的文本文件。\n它可以包含多行文本。'); */

</script>

</html>